# Q. What is this file?
# A. This file contains options which allow you to configure your multiworld experience while allowing
#    others to play how they want as well.
#
# Q. How do I use it?
# A. The options in this file are weighted. This means the higher number you assign to a value, the
#    more chances you have for that option to be chosen. For example, an option like this:
#
#    map_shuffle:
#      on: 5
#      off: 15
#
#    Means you have 5 chances for map shuffle to occur, and 15 chances for map shuffle to be turned
#    off.
#
# Q. I've never seen a file like this before. What characters am I allowed to use?
# A. This is a .yaml file. You are allowed to use most characters.
#    To test if your yaml is valid or not, you can use this website:
#        http://www.yamllint.com/
#    You can also verify that your Archipelago options are valid at this site:
#        https://archipelago.gg/check

# Your name in-game, limited to 16 characters.
#     {player} will be replaced with the player's slot number.
#     {PLAYER} will be replaced with the player's slot number, if that slot number is greater than 1.
#     {number} will be replaced with the counter value of the name.
#     {NUMBER} will be replaced with the counter value of the name, if the counter value is greater than 1.
name: Player{number}

# Used to describe your yaml. Useful if you have multiple files.
description: Default Dead Rising Deluxe Remaster Template

game: Dead Rising Deluxe Remaster
requires:
  version: 0.6.7 # Version of Archipelago required for this yaml to work as expected.

Dead Rising Deluxe Remaster:
  ################
  # Game Options #
  ################
  progression_balancing:
    # A system that can move progression earlier, to try and prevent the player from getting stuck and bored early.
    # 
    # A lower setting means more getting stuck. A higher setting means less getting stuck.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 99
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-99: 0 # random value between 0 and 99
    disabled: 0 # equivalent to 0
    normal: 50 # equivalent to 50
    extreme: 0 # equivalent to 99

  accessibility:
    # Set rules for reachability of your items/locations.
    # 
    # **Full:** ensure everything can be reached and acquired.
    # 
    # **Minimal:** ensure what is needed to reach your goal can be acquired.
    full: 50
    minimal: 0

  guaranteed_items:
    # Guarantees that the specified items will be in the item pool
    {}

  death_link:
    # When you die, everyone who enabled death link dies. Of course, the reverse is true too.
    'false': 50
    'true': 0

  ##############################
  # Goal and Location Settings #
  ##############################
  goal:
    # Determines the victory condition for the game.
    # 
    # Ending S: Complete all overtime missions and defeat Brock on the tank.
    #           This is the full game experience including overtime mode.
    # 
    # Ending A: Solve all of the cases and reach the helipad by 12pm on Day 4.
    #           Overtime scoops are removed from the pool, making for a shorter run.
    # 
    # Savior:   Rescue a specified number of survivors to win (see
    #           "Number of Survivors" below). Ending S / Ending A locations still
    #           exist as normal checks but are filler-only and not the goal.
    ending_s: 50
    ending_a: 0
    savior: 0

  number_of_survivors:
    # The number of survivors that must be rescued for the Savior goal. Only has
    # an effect when Goal is set to Savior.
    # 
    # The maximum (48) requires rescuing every survivor in the game — 45 from
    # survivor/psychopath scoops plus the 3 free survivors (Bill Brenton,
    # Jeff Meyer, Natalie Meyer) who arrive without a dedicated scoop.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 1
    # Maximum value is 48
    35: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-1-48: 0 # random value between 1 and 48

  scoop_sanity:
    # When enabled, scoops are sent to the player as items and the game time is frozen
    # after completing the Entrance Plaza prologue.
    # 
    # The order for main scoops will be randomized and the player will need
    # to receive the scoop item in order for the next scoop to spawn in the world.
    # 
    # An example:
    # The player's scoop order is 1. Girl Hunting, 2. Carlito's Hideout, 3. Backup for Brad.
    # After completing the Entrance Plaza prologue, the player will need to wait
    # until they receive the Girl Hunting scoop item from AP before they can do the mission.
    # If they receive a later mission, like Backup for Brad, they will not be able to do it until they
    # receive and complete the prior missions.
    # 
    # Players will also receive side scoops as items, which will spawn the NPCs into
    # the world right away.
    # 
    # An example:
    # The player receives "Lovers".  Tonya and Ross will now spawn into the world in
    # Wonderland plaza and are rescuable.
    'false': 0
    'true': 50

  pp_bonus_locations:
    # Adds ~57 extra AP location checks tied to PP-bonus events and key-item
    # pickup banners that DRAP detects via the MsgEvents watcher:
    # 
    # Single-fire checks:
    #   * Realign Servbot Head (Paradise Plaza fountain)
    #   * Ride the Space Rider
    #   * Obtain Mall Map and Transceiver (Otis bundle)
    #   * Obtain Maintenance Tunnel Key
    #   * Obtain First Aid Kit (in Seon's Food and Stuff, gated on defeating Steven)
    # 
    # Counted-progression checks (per-instance + ALL-X final):
    #   * Walk on N Treadmills (1..6, plus All Treadmills)         -- Al Fresca
    #   * Destroy N Sandbags (1..4, plus All Sandbags)             -- Al Fresca
    #   * Spin N Display Racks (1..4, plus All Display Racks)      -- Entrance
    #   * Break N Food Court Wall Plates (1..18, no separate "all")
    #   * Microwave N Items (1..9, plus Microwave All Items)
    #   * Heat N Pans (1..5, plus Heat All Pans)
    # 
    # Logic gating: each check requires the relevant region. Microwave/Heat
    # locations require Food Court access (the most restrictive of the regions
    # those events occur in). In Restricted Item Mode, microwave checks
    # additionally require Uncooked Pizza or Raw Meat, and stove checks
    # require Frying Pan.
    'false': 0
    'true': 50

  exclude_levels:
    # When enabled, high level-up checks are prevented from having progression items.
    # This can be used to limit grinding and allows more control over the potential length of a run.
    'false': 0
    'true': 50

  exclude_levels_above:
    # If 'Exclude Levels' is enabled, any level-ups above the chosen value will still
    # exist as checks but will be prevented from having progression items.
    # If 'Exclude Levels' is disabled, this value can be ignored.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 25
    # Maximum value is 50
    30: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-25-50: 0 # random value between 25 and 50

  ############################
  # Door Randomizer Settings #
  ############################
  door_randomizer:
    # When enabled, door connections throughout the mall are randomized.
    # All area keys are given to you at the start, and doors lead to unexpected locations.
    # 
    # The randomizer ensures all areas remain reachable and no softlocks occur.
    'false': 50
    'true': 0

  door_randomizer_mode:
    # Controls how doors are randomized when Door Randomizer is enabled.
    # 
    # Chaos: Doors are fully randomized. Going through door A to reach area B
    #        does NOT mean the door in B will take you back to A. Navigation
    #        requires careful attention to the door map.
    # 
    # Paired: Doors are randomized in pairs. If door A leads to area B, then
    #         a door in B will lead back to A. This creates a more intuitive
    #         but still randomized layout.
    chaos: 0
    paired: 50

  randomize_rooftop_service_hallway_doors:
    # When enabled (and Door Randomizer is on), the doors between Rooftop and
    # Warehouse are included in the randomization pool.
    # 
    # When disabled (the default), those two doors are left vanilla even with
    # Door Randomizer on, so the opening sequence behaves as expected. Only
    # affects the Rooftop <-> Warehouse pair; all other doors still
    # randomize normally.
    # 
    # Has no effect if Door Randomizer is disabled.
    'false': 50
    'true': 0

  #################
  # Item Settings #
  #################
  restricted_item_mode:
    # When enabled, players cannot pick up items in the world unless they have been sent
    # to them by the Archipelago server. This creates a more challenging experience where
    # you must rely on items from other players or your own location checks.
    # 
    # Items received from AP will be shown in the Items window, and only those items
    # can be picked up from the ground or dispensers in the game world.
    'false': 50
    'true': 0

  exclude_overpowered_items:
    # When enabled, removes a curated set of items widely considered too
    # powerful from the AP item pool:
    # 
    #   * Book [Infinite Durability]  (weapons never break)
    #   * Book [Martial Arts]         (massively-boosted unarmed damage)
    #   * Laser Sword                 (high-damage, high-durability weapon)
    #   * Real Mega Buster            (high-damage ranged weapon)
    # 
    # Disabled by default. Players who want these items to remain in
    # rotation should leave it off; players who want a more balanced run
    # should enable it.
    # 
    # Note: items explicitly listed under Guaranteed Items are still added
    # even when this option is on, since that's an explicit user override.
    'false': 50
    'true': 0

  ###########################
  # Skill and Stat Settings #
  ###########################
  enable_skill_items:
    # When enabled, Frank's 21 combat skills (Jump Kick, Suplex, etc.) become AP
    # items in the pool. They are classified as Useful — guaranteed to be in
    # the multiworld but not in progression logic.
    # 
    # Has no effect if Vanilla Progression is set to 'vanilla_only' (in that mode
    # the skills are granted normally on level-up and not duplicated as items).
    'false': 0
    'true': 50

  enable_stat_items:
    # When enabled, Progressive stat upgrades become AP items in the pool:
    # Health (+1000), Attack (+25%), Throw (+25), Item Slot (+1), Run Level (+1).
    # Classified as Useful.
    # 
    # Has no effect if Vanilla Progression is set to 'vanilla_only'.
    'false': 0
    'true': 50

  enable_extra_stat_buffs:
    # When enabled, additional stat-upgrade items push past vanilla L50 caps:
    #    * +4 Health (cap 16000)
    #    * +10 Attack (cap 500%)
    #    * +8 Throw (cap 400)
    #    * +3 Item Slot (cap 15)
    #    * +10 Speed Multiplier (cap 1.5x — DRAP-only category)
    # 
    # Useful for longer multiworld pools or harder-mode runs. Note that pushing
    # Attack past 250% breaks the in-game UI bar count (combat damage still
    # scales correctly).
    'false': 50
    'true': 0

  vanilla_progression:
    # Controls how Frank's natural level-up rewards interact with AP items.
    # 
    # vanilla_only:
    #     Engine grants skills/stats normally on level-up. AP skill/stat items
    #     are NOT in the pool. Use this if you only want scoop/door
    #     randomization without touching Frank's progression.
    # 
    # replace:
    #     Engine's level-up grants are suppressed (re-overridden each level).
    #     AP items are the only source of skills and stats. The default.
    # 
    # extra_buffs_only:
    #     Engine grants normally, AP items contain ONLY the over-vanilla extras
    #     (cap-pushing items). Best paired with Enable Extra Stat Buffs = true.
    vanilla_only: 0
    replace: 50
    extra_buffs_only: 0

  #################
  # Trap Settings #
  #################
  trap_percentage:
    # Percentage of filler-item slots that become traps. 0 = no traps,
    # 25 = balanced default, 50 = aggressive, 100 = chaos. The selected
    # fraction of filler slots is dedicated to traps and round-robin
    # distributed across all six trap types (Stomach Ache Trap, Zombait
    # Trap, Slow Trap, Damage Player Trap, Hostile NPC Trap, Special
    # Forces Trap) so every type appears at least once before any
    # repeats.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    25: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  hostile_survivor_count_min:
    # Minimum number of hostile NPCs spawned per Hostile NPC Trap.
    # Each trap rolls between min and max (inclusive) at fire time.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 1
    # Maximum value is 5
    1: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-1-5: 0 # random value between 1 and 5

  hostile_survivor_count_max:
    # Maximum number of hostile NPCs spawned per Hostile NPC Trap.
    # Capped by the trap pool's available stypes (~10 cutscene-only NPCs).
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 1
    # Maximum value is 10
    3: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-1-10: 0 # random value between 1 and 10

  #######################
  # Difficulty Settings #
  #######################
  cult_limited:
    # In ScoopSanity, cultists will appear after beginning either 'The Cult' or
    # 'A Strange Group', and they will remain in the mall indefinitely.
    # 
    # If this option is enabled, the cult will instead disappear from the mall
    # after Sean is killed like they do in the regular game. However, they will
    # still be clustered outside the boss room in Colby's movie theater so you
    # can complete any cult-related checks.
    # 
    # This option has no effect if ScoopSanity is off.
    'false': 50
    'true': 0

  night_mode_enabled:
    # When enabled, zombies behave as if it is always night, regardless of
    # the in-game time. The night-side parameters of `ZombieDefinitionUserData`
    # (HoldMissRate, HoldBlockRate, HoldBlockFallRate) are written over the
    # day-side fields, and `ZombieManager.isHourNight()` is hooked to always
    # return true.
    # 
    # Effects:
    #   * Higher chance for grabs to land (Day 5% miss → Night 15% miss)
    #   * Higher chance for zombies to block counterattacks (Day 45% → Night 55%)
    #   * Slightly more aggressive overall behavior
    # 
    # The "glowing eyes" visual effect that normally accompanies night does
    # NOT carry over — that's tied to a separate render pass. This is purely
    # a difficulty modifier.
    'false': 50
    'true': 0

  hardcore_zombies_enabled:
    # When enabled, zombies become significantly more dangerous on top of
    # Night Mode. **Implies Night Mode** — turning this on without enabling
    # Night Mode auto-enables it.
    # 
    # Amplified parameters:
    #   * Bite damage: -1000 → -3000 HP per tick (3×)
    #   * Downed-bite damage: -3000 → -9000 HP per tick (3×)
    #   * Scratch damage rate: 3.5 → 7.0 (2×)
    #   * Player aggro radius: 9 → 25 units (much harder to sneak past)
    #   * General aggro radius: 13 → 35 units
    #   * NPC aggro radius: 10 → 25 units (zombies notice survivors faster)
    #   * Grab escape mash count: 15 → 30 (2× harder to escape)
    #   * Mash decay rate: 0.02 → 0.05 (gauge drains faster while mashing)
    # 
    # Recommended only for experienced players seeking a challenge run.
    'false': 50
    'true': 0

  ####################
  # Costume Settings #
  ####################
  random_starting_costume:
    # When enabled, Frank's outfit is randomized once at the start of each
    # play session (after the save loads or on a fresh new game). One
    # consistent randomized look per seed.
    # 
    # Randomization rules:
    #   * Body slot (0..42 regular costumes by default; 0..62 if DLC outfits
    #     are enabled below) is always picked first.
    #   * If the rolled Body is a regular costume (0..42), Foot / Hat /
    #     Glasses are also randomized to give Frank a chaotic accessorized
    #     outfit.
    #   * If the rolled Body is a DLC anchor (43..62, requires Dlc Outfits
    #     Enabled), it acts as a full-outfit replacement and the engine
    #     overrides the other slots automatically — Foot / Hat / Glasses are
    #     left alone since the DLC outfit dictates the whole look.
    # 
    # Independent of the Costume Chaos Mode option below.
    'false': 50
    'true': 0

  costume_chaos_mode:
    # When enabled, Frank's outfit is re-randomized on every area transition
    # (i.e. every door / loading-zone change). Frank looks different in every
    # area, with a fresh random outfit each time.
    # 
    # Uses the same Body-first randomization rules as Random Starting Costume.
    # Each area transition will count toward the "Change into 8 different
    # outfits" achievement, which may complete that location very quickly.
    # 
    # Compatible with Random Starting Costume. If both are on, the starting
    # costume picks the look at session start and chaos mode reshuffles on
    # every door from there.
    'false': 50
    'true': 0

  dlc_outfits_enabled:
    # When enabled, the costume randomizer's Body pool includes the 20 DLC
    # outfit IDs (43..62) on top of the 43 regular Body costumes. DLC IDs
    # function as full-outfit anchors — picking one applies a complete DLC
    # outfit (e.g. Mega Man armor, knight set) instead of a partial body.
    # 
    # REQUIRES the player owns the corresponding DR-DR DLC. If the DLC is not
    # installed, applying these IDs is expected to fail silently (the engine
    # rejects the swap and Frank stays in his current outfit). Leave this
    # OFF if you don't own the DLC to keep the randomizer pool in the safe
    # range.
    'false': 50
    'true': 0

  ###########################
  # Item & Location Options #
  ###########################
  local_items:
    # Forces these items to be in their native world.
    []

  non_local_items:
    # Forces these items to be outside their native world.
    []

  start_inventory:
    # Start with the specified amount of these items. Example: "Bomb: 1"
    {}

  start_inventory_from_pool:
    # Start with the specified amount of these items and don't place them in the world. Example: "Bomb: 1"
    # 
    # The game decides what the replacement items will be.
    {}

  start_hints:
    # Start with these item's locations prefilled into the ``!hint`` command.
    []

  start_location_hints:
    # Start with these locations and their item prefilled into the ``!hint`` command.
    []

  exclude_locations:
    # Prevent these locations from having an important item.
    []

  priority_locations:
    # Prevent these locations from having an unimportant item.
    []

  item_links:
    # Share part of your item pool with other players.
    []

  plando_items:
    # Generic items plando.
    []
